3e42646465eaad72d14f0729207a482bcdbd87cc,src/org/pentaho/di/job/entries/waitforfile/JobEntryWaitForFile.java,JobEntryWaitForFile,execute,#Result#number#Repository#Job#,177
Before Change
{
// If lower than 1 set to the default
iCycleTime = Const.toInt(DEFAULT_CHECK_CYCLE_TIME, 1);
log.logBasic(toString(), "Check cycle time invalid, reset to " + iCycleTime);
}
if ( iMaximumTimeout == 0 )
{
log.logBasic(toString(), "Waiting indefinitely for file [" +
realFilename + "]");
}
else
{
log.logBasic(toString(), "Waiting " + iMaximumTimeout + " seconds for file [" +
realFilename + "]");
}
boolean continueLoop = true;
while ( continueLoop && !parentJob.isStopped() )
{
fileObject = KettleVFS.getFileObject(realFilename);
if ( fileObject.exists() )
{
// file exists, we're happy to exit
log.logBasic(toString(), "Detected file [" + realFilename + "] within timeout");
result.setResult( true );
continueLoop = false;
}
else
{
long now = System.currentTimeMillis() / 1000;
if ( (iMaximumTimeout > 0) &&
(now > (timeStart + iMaximumTimeout)))
{
continueLoop = false;
// file doesn't exist after timeout, either true or false
if ( isSuccessOnTimeout() )
{
log.logBasic(toString(), "Didn't detect file [" + realFilename + "] before timeout, success");
result.setResult( true );
}
else
{
log.logBasic(toString(), "Didn't detect file [" + realFilename + "] before timeout, failure");
result.setResult( false );
}
}
After Change
{
// If lower than 1 set to the default
iCycleTime = Const.toInt(DEFAULT_CHECK_CYCLE_TIME, 1);
if(log.isBasic()) log.logBasic(toString(), "Check cycle time invalid, reset to " + iCycleTime);
}
if ( iMaximumTimeout == 0 )
{
if(log.isBasic()) log.logBasic(toString(), "Waiting indefinitely for file [" +
realFilename + "]");
}
else
{
if(log.isBasic()) log.logBasic(toString(), "Waiting " + iMaximumTimeout + " seconds for file [" +
realFilename + "]");
}
boolean continueLoop = true;
while ( continueLoop && !parentJob.isStopped() )
{
fileObject = KettleVFS.getFileObject(realFilename);
if ( fileObject.exists() )
{
// file exists, we're happy to exit
if(log.isBasic()) log.logBasic(toString(), "Detected file [" + realFilename + "] within timeout");
result.setResult( true );
continueLoop = false;
//add filename to result filenames
if(addFilenameToResult && fileObject.getType()==FileType.FILE){
ResultFile resultFile = new ResultFile(ResultFile.FILE_TYPE_GENERAL , fileObject, parentJob.getName(), toString());
resultFile.setComment(Messages.getString("JobWaitForFile.FilenameAdded"));
result.getResultFiles().put(resultFile.getFile().toString(), resultFile);
}
}
else
{
long now = System.currentTimeMillis() / 1000;
if ( (iMaximumTimeout > 0) &&
(now > (timeStart + iMaximumTimeout)))
{
continueLoop = false;
// file doesn't exist after timeout, either true or false
if ( isSuccessOnTimeout() )
{
if(log.isBasic()) log.logBasic(toString(), "Didn't detect file [" + realFilename + "] before timeout, success");
result.setResult( true );
}
else
{
if(log.isBasic()) log.logBasic(toString(), "Didn't detect file [" + realFilename + "] before timeout, failure");
result.setResult( false );
}
}